package com.zmn.plat.services.interfaces.orderconfig.returnvisitcontent;

import java.util.List;

import com.zmn.plat.model.entity.orderconfig.returnvisitcontent.ReturnVisitContent;
import com.zmn.plat.model.entity.orderconfig.returnvisitcontent.ReturnVisitContentQuery;

/**
 * 类描述:回访内容service接口
 *
 * @author linfeng
 * @since 2019/10/24/9:44
 */
public interface ReturnVisitContentService {
    /**
     * 统计
     *
     * @param query
     *            条件
     * @return
     */
    Integer countByQuery(ReturnVisitContentQuery query);

    /**
     * 查询回访内容
     *
     * @param id
     * @return
     */
    ReturnVisitContent findByKey(Integer id);

    /**
     * 分页搜索回访内容
     *
     * @param query
     *            条件
     * @return
     */
    List<ReturnVisitContent> listPageByQuery(ReturnVisitContentQuery query);

    /**
     * 搜索
     *
     * @param query
     *            条件
     * @return
     */
    List<ReturnVisitContent> listByQuery(ReturnVisitContentQuery query);

    /**
     * 批量更新状态
     * 
     * @param arrayIds
     * @param status
     * @param updater
     * @return
     */
    int updateStatusBatch(List<Integer> arrayIds, int status, String updater);

    /**
     * 更新排序
     * 
     * @param id
     * @param sort
     * @param updater
     * @return
     */
    Integer updateSortKey(int id, int sort, String updater);

    /**
     * 更新回访内容首字母
     * 
     * @param id
     * @param firstLetter
     * @param updater
     * @return
     */
    Integer updateFirstLetterByKey(int id, String firstLetter, String updater);

    /**
     * 添加回访内容
     *
     * @param returnVisitContent
     *            对象
     * @return
     */
    Integer insert(ReturnVisitContent returnVisitContent);

    /**
     * 更新回访内容
     * 
     * @param returnVisitContent
     * @return
     */
    Integer updateByKey(ReturnVisitContent returnVisitContent);
}
